package com.jsd.demo.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel("退款参数")
public class RefundVO {

    /**
     * UPP商户号
     */
    @ApiModelProperty(value = "UPP商户号")
    private String merchantId;

    /**
     * 类型：orderRefund  --订单退款
     */
//    @ApiModelProperty(value = "类型：orderRefund  --订单退款")
//    private String type;

    /**
     * 商户订单号(当orderType等于0时传父订单，当orderType等于1时传子订单)
     */
    @ApiModelProperty(value = "商户订单号(当orderType等于0时传父订单，当orderType等于1时传子订单)")
    private String orderId;

    /**
     * 版本号
     */
//    @ApiModelProperty(value = "版本号")
//    private String version;

    /**
     * 退款金额：单位为分,退款总金额不可超过支付金额
     */
    @ApiModelProperty(value = "退款金额：单位为分,退款总金额不可超过支付金额")
    private String amount;

    /**
     * 签名数据
     */
//    @ApiModelProperty(value = "签名数据")
//    private String hmac;

    /**
     * 退款回调：用户提供退款回调地址，当退款完成后UPP会通知改地址已退款成功或失败
     */
    @ApiModelProperty(value = "退款回调：用户提供退款回调地址，当退款完成后UPP会通知改地址已退款成功或失败")
    private String refundnotifyurl;

    /**
     * 父订单号
     */
    @ApiModelProperty(value = "父订单号")
    private String payNo;

    /**
     * 目前仅那家网使用，根据orderType的值决定orderId传子订单号还是父订单号(0：父订单退款，1：子订单退款)
     */
    @ApiModelProperty(value = "目前仅那家网使用，根据orderType的值决定orderId传子订单号还是父订单号(0：父订单退款，1：子订单退款)")
    private String orderType;

    /**
     * 分账退款信息
     */
    @ApiModelProperty(value = "分账退款信息")
    private String refundInfo;
}
